Directed acyclic graph discovery and network prefix information distribution relative to a clusterhead in an ad hoc mobile network

ABSTRACT

Each mobile router in an ad hoc mobile network is configured for concurrently attaching to multiple parents advertising respective parent depths relative to a clusterhead of the ad hoc mobile network. The mobile router selects an advertised depth relative to the clusterhead based on adding a prescribed increment to a maximum one of the parent depths, enabling the mobile routers to form a directed acyclic graph relative to the clusterhead. Each mobile router sends to each of its parents a neighbor advertisement message specifying at least one reachable prefix, a corresponding cost for reaching the reachable prefix, and a corresponding sequence identifier that enables the parents to validate the neighbor advertisement message relative to stored router entries. Hence, mobile routers automatically can form a directed acylic graph relative to the clusterhead, and can distribute routing information with minimal overhead.

This application is a continuation of copending U.S. application Ser.No. 11/167,240, filed Jun. 28, 2005.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to routing protocols for establishment ofan ad hoc mobile network by mobile routers, where the routing protocolsare optimized for minimal overhead for accommodating rapid topologychanges in the ad hoc mobile network.

2. Description of the Related Art

Proposals have been made by Internet Engineering Task Force (IETF)groups for improved mobility support of Internet Protocol (IP) basedmobile devices (e.g., laptops, IP phones, personal digital assistants,etc.) in an effort to provide continuous Internet Protocol (IP) basedconnectivity. The IETF has a Mobile IP Working Group that has developedrouting support to permit IP nodes (hosts and routers) using either IPv4or IPv6 to seamlessly “roam” among IP subnetworks. In addition, theMobile Networks (MONET) group (renamed as the Network Mobility (NEMO)group) has published different Internet Drafts, including an InternetDraft by Thierry Ernst, entitled “Network Mobility Support Terminology”,February 2002.

According to the NEMO group, a mobile network may be composed by one ormore IP subnets and is connected to the global Internet via one or moreMobile Routers (MR). The mobile router has at least two networkinterfaces: an egress interface toward the wide area network, and aningress interface from within the mobile network. Mobile network nodesmay include local fixed nodes (LFN) (nodes unable to change their pointof attachment while maintaining ongoing sessions), local mobile nodes(LMN) (mobile nodes that belong to the mobile network and able to changetheir point of attachment within the mobile network or outside themobile network), and visiting mobile nodes (VMN) (mobile nodes that notbelong to the mobile network and that can change their point ofattachment from outside the mobile network to inside the mobilenetwork). Each of the nodes may be either a host or a router.

Hence, a mobile router is a router configured for establishing acommunication link between the mobile network and an attachment router.As apparent from the foregoing, an objective of NEMO is providing mobilenodes with protocols for establishing connectivity with a wide areanetwork, such as the Internet. The mobile router thus serves as agateway to route packets between the mobile network and the Internet.

Unfortunately, existing Internet-based routing protocols that assume apersistent connection to a wide area network such as the Internet relyon the ability to aggregate reachability to IP nodes, where all nodessharing a common network link (such as a link of a top level mobilerouter connecting to an attachment router on the Internet) share thesame routing prefix. Such aggregation creates a hierarchy of networkprefixes that enables scalability. However, such a hierarchy is notpossible in ad hoc networks.

The IETF has a Mobile Ad-hoc Networks (MANET) Working Group that isworking to develop standardized MANET routing specification(s) foradoption by the IETF. According to the MANET Working Group, the “mobilead hoc network” (MANET) is an autonomous system of mobile routers (andassociated hosts) connected by wireless links—the union of which form anarbitrary graph. The routers are free to move randomly and organizethemselves arbitrarily; thus, the network's wireless topology may changerapidly and unpredictably. Such a network may operate in a standalonefashion, or may be connected to the larger Internet.

The MANET system is particularly suited to low-power radio networks thatmay exhibit an unstable topology, where wireless propagationcharacteristics and signal quality between a wireless transmissionsource and a receiver can be difficult to model and quantify. In aMANET, the device address is tied to the device, not a topologicallocation, as there is no fixed network infrastructure. When theaddressed device moves, therefore, the motion changes the routinginfrastructure. Hence, as described in an Internet Draft by Baker,entitled “An Outsider's View of MANET” (Mar. 17, 2002), the fundamentalbehavior of a MANET is that a routing node carries with it an address oraddress prefix, and when it moves, it moves the actual address; whenthis happens, routing must be recalculated in accordance with the newtopology. For example, each mobile router retains its address prefix;hence, neighboring mobile routers in a MANET may have distinct addressprefixes.

Existing MANET protocols focus on the internal connectivity within theunstable topology between mobile devices; however, the existing MANETprotocols suffer from the disadvantage that they provide a poor modelfor connecting to a wide area network such as the Internet.

MANET protocols can be divided into the following types: stateful(proactive); and stateless (reactive). Proactive MANET protocolsdistribute routing information throughout the MANET network, enablingthe routers within the MANET network to store route information before adata packet needs to be routed; hence, a router determines how toforward a packet based on accessing routing information from an internaltable. However, proactive protocols suffer the disadvantage of requiringupdate messages to update obsolete route entries: the necessity forupdate messages increases with a corresponding desire for an improvementin route optimization.

Proactive MANET protocols can be subdivided into two subtypes, or“families”: Optimized Routing Approach (ORA), and Least Overhead RoutingApproach (LORA). The ORA type protocols are similar to routing protocolsused in the Internet, in that they stress maintaining the best states tomaintain the shortest path routes, at the expense of requiring morecontrol messages to exchange routes. An example of an ORA type routingprotocol is Open Shortest Path First (OSPF) (as specified by the IETFRequest for Comments (RFC) 2178), or Intermediate System-to-IntermediateSystem (IS-IS) protocol (specified by the International Organization forStandardization document ISO 10589). However, the OSPF and IS-ISprotocols suffer from the disadvantage that they may require up to aminute to converge (i.e., complete protocol communications necessary toestablish a connection) and hence may not be able to converge quicklyenough for a mobile router that is moving from one location to another.For example, in the case of two vehicles passing each other, each havinga mobile router, there may exist approximately ten seconds for themobile routers to establish a connection; hence, routing protocolsrequiring up to a minute to converge would be unable to establish aconnection. Also note that OSPF requires link-state advertisements(LSAs) to be refreshed as they expire after 3600 sec, resulting insubstantial burdens in distributing the LSAs.

Reactive protocols were developed to address the slow convergence of ORAtype proactive protocols, where routing information is acquired onlywhen needed. Examples of reactive protocols are described in an InternetDraft by Perkins et al., “Ad hoc On-Demand Distance Vector (AODV)Routing (draft-ietf-manet-aodv.13), Feb. 17, 2003, and an Internet Draftby Johnson et al., “The Dynamic Source Routing Protocol for Mobile AdHoc Networks (DSR) <draft-ietf-manet-dsr-09.txt>”, Apr. 15, 2003.Reactive protocols require less bandwidth than proactive protocols, butthe latency for many applications will increase substantially, resultingin long delays. Such delays become quite apparent if a mobile userattempts to execute a bandwidth-intensive application on the ad hocnetwork instead of a typical high-speed wired connection on the Internetusing a conventional connection (e.g., hard-wired LAN, cable modem,etc.).

The LORA family of proactive protocols attempts to provide a compromisebetween the fully stateful (ORA family) protocols and the fullystateless (reactive) protocols. One example of a LORA-type protocol isdescribed in an Internet Draft by Garcia-Luna-Aceves, et al., “SourceTree Adaptive Routing (STAR) Protocol <draft-ietf-manet-star.00.txt>”,Oct. 22, 1999. However, even the disclosed STAR protocol suffers fromdisadvantages of requiring routing messages to establish a stabletopology within the MANET network. For example, the STAR protocolrequires a router to transmit the parameters of its source routing tree,including each link that the router needs to reach every knowndestination (and address range) in the ad hoc network or Internet.Although the STAR router attempts to conserve transmission bandwidth andenergy by sending changes to its source routing tree only when therouter detects new destinations, the possibility of looping, or thepossibility of node failures or network partitions, the necessity oftransmitting such parameters for each and every link still imposessubstantial messaging requirements that affects bandwidth availabilityand network convergence times.

Hence, existing LORA-type protocols still provide only limitedimprovements in reducing convergence time and update messages betweenrouters.

Efforts have been made to optimize communications between mobile routersof an ad hoc network based on the mobile routes organizing into atree-based topology. For example, U.S. Patent Publication No. US2004/0032852, published Feb. 19, 2004, entitled “Arrangement for RouterAttachments Between Roaming Mobile Routers in a Mobile Network”, thedisclosure of which is incorporated in its entirety herein by reference,describes a technique for each mobile router of an ad hoc mobile networkto independently select whether to attach to a candidate attachmentrouter, based on tree information options advertised by the candidateattachment router and selection criteria employed by the mobile router.The independent selection by each router of whether to attach to anotherrouter enables the routers to dynamically establish a tree-based networktopology model, where each router may continually determine whether analternate attachment point within the tree is preferred.

Commonly-assigned, copending application Ser. No. 10/856,809, filed Jun.1, 2004, entitled “Arrangement for Providing Network Prefix Informationfrom Attached Mobile Routers to a Clusterhead in a Tree-Based Ad HocMobile Network”, the disclosure of which is incorporated in its entiretyherein by reference, describes a technique that provides optimizedtransfer of routing information between mobile routers havingestablished a tree topology in an ad hoc mobile network. The tree-basednetwork topology has a single clusterhead and attached mobile routers.Each attached mobile router has a default egress interface configuredfor sending messages toward the clusterhead, and ingress interfacesconfigured for receiving messages from attached network nodes that areaway from the clusterhead. A neighbor advertisement message receivedfrom an ingress interface away from a clusterhead is used by theattached mobile router to identify specified network prefixes that arereachable via the source of the neighbor advertisement message. Theattached mobile router outputs on its default upstream interface asecond neighbor advertisement message that specifies the network prefixused by the attached mobile router, and the specified network prefixesfrom the neighbor advertisement message received on the ingressinterface. Hence, the propagation of neighbor advertisement messagestoward the clusterhead establishes connectivity with minimal routingoverhead.

Concerns remain, however, that mobile ad hoc networks continuallyencounter changes in communications links that may cause regular andunpredictable changes in the network topology: any connectivity lossbetween a mobile router and its attachment router requires the mobilerouter to locate a new attachment router, and communicate to theclusterhead the change in network topology, namely that the mobilerouter and its subtree are now reachable via the new attachment router.

Link reversal routing has been suggested as a technique for providingmultiple communications links between nodes in an ad hoc mobile network,where link reversal routing algorithms build a directed acyclic graph(DAG) for each possible destination: a directed graph is acyclic if itcontains no cycle or loop, and the DAG maps to a given destination basedon the destination having only incoming links: all other nodes that haveincoming links also must have outgoing links. An example of a routingalgorithm that builds a DAG is the Temporally-Ordered Routing Algorithm(TORA).

Existing DAG-based routing algorithms that permit multiple connections,such as TORA, still require substantial processing and overheadrequirements that may increase convergence times in response to topologychanges, limiting the ad hoc network to rapidly respond to topologicalchanges. For example, reliance on a DAG for a given destination requiresrecalculation of a new DAG for each and every destination; further, TORArequires that a packet is broadcast to all of its neighbors, resultingin additional congestion in the ad hoc network and additional processingby each network node that receives a packet and determines that thepacket should be dropped.

SUMMARY OF THE INVENTION

There is a need for an arrangement that enables a mobile ad hoc networkto employ the benefits of minimal processing requirements associatedwith tree-based routing protocols, while accommodating multiple-pathconnections for reliable data transfer and load balancing betweenendpoints in a mobile ad hoc network.

There also is a need for an arrangement that enables mobile routers of amobile ad hoc network to optimize communications with a clusterheadbased on organizing into a network topology in accordance with adirected acyclic graph (DAG), where mobile routers can have multipleattachment routers (also referred to as “parents”) with minimalprocessing requirements for establishment and maintenance of the networktopology.

These and other needs are attained by the present invention, where eachmobile router in an ad hoc mobile network is configured for concurrentlyattaching to multiple parents advertising respective parent depthsrelative to a clusterhead of the ad hoc mobile network. The mobilerouter, in response to attaching to the multiple parents, selects anadvertised depth relative to the clusterhead based on adding aprescribed increment to a maximum one of the parent depths, enabling themobile routers to form a directed acyclic graph relative to theclusterhead. Each mobile router also is configured for sending to eachof its parents a neighbor advertisement message specifying at least onereachable prefix, a corresponding cost for reaching the reachableprefix, and a corresponding sequence identifier that enables the parentsto validate the neighbor advertisement message relative to stored routerentries.

Hence, the mobile routers automatically can form a directed acyclicgraph relative to the clusterhead, and can propagate reachable prefixesto each of their respective parents, enabling all the mobile routers andthe clusterhead to distribute routing information with minimal overhead.

One aspect of the present invention provides a method in a mobile routerconfigured for establishing communications within an ad hoc network. Themethod includes establishing concurrent attachments to respectiveattachment routers based on having received respective advertisementmessages specifying respective parent depths relative to a clusterheadof the ad hoc network. The method also includes selecting an advertiseddepth relative to the clusterhead based on adding a prescribed incrementto a maximum one of the parent depths, and advertising reachability tothe clusterhead based on outputting a router advertisement messagespecifying the advertised depth relative to the clusterhead. Attachingto a plurality of attachment routers enables the mobile router toestablish stable connectivity within the ad hoc mobile network, ensuringconnectivity if the link to one of the attachment routers is lost;multiple attachments also enables the mobile router to distributetraffic via the respective attachment routers for load balancing.Further, the selection of an advertised depth enables the mobile routerto position itself within the mobile network topology as desired, forexample enabling mobile routers configured as backbone routers toposition themselves closer to the clusterhead, whereas mobile routersconfigured as distribution routers can position themselves further fromthe clusterhead and closer to end nodes at the periphery of the ad hocnetwork. Hence, multiple unequal-cost paths can be directed toward theclusterhead, enabling the mobile routers to establish a directed acyclicgraph toward the clusterhead, providing a more stable network topologywithin the ad hoc network.

An additional feature of this aspect includes sending, by the mobilerouter to each of the attachment routers and in response to havingestablished each corresponding attachment, a neighbor advertisementmessage specifying at least one reachable prefix advertised by themobile router in the router advertisement message, a corresponding costfor reaching the reachable prefix, and a corresponding sequenceidentifier that enables validation of the corresponding at least onereachable prefix relative to any stored router entries in the attachmentrouters. Hence, mobile routers can distribute routing information towardthe clusterhead via multiple paths in the ad hoc network, enabling theattachment routers and the clusterhead to identify the most recentrouting information for reaching the reachable prefixes.

Another aspect of the present invention provides an ad hoc networkhaving a plurality of mobile routers. The plurality of mobile routershave organized into a directed acyclic graph directed toward aclusterhead, one of the mobile routers serving as the clusterhead andthe directed acyclic graph having attached mobile routers havingattached to attachment routers. Each mobile router includes anattachment resource and a router advertisement resource. The attachmentresource is configured for selectively establishing concurrentattachments, as an attached mobile router, to selected ones of theattachment routers based on the mobile router having received respectiveadvertisement messages from the selected ones of the attachment routers,the advertisement messages specifying respective parent depths relativeto a clusterhead of the ad hoc network. The router advertisementresource is configured for advertising reachability to the clusterheadbased on outputting a router advertisement message specifying anadvertised depth relative to the clusterhead, the router advertisementresource configured for selecting the advertised depth relative to theclusterhead based on adding a prescribed increment to a maximum one ofthe parent depths.

Additional advantages and novel features of the invention will be setforth in part in the description which follows and in part will becomeapparent to those skilled in the art upon examination of the followingor may be learned by practice of the invention. The advantages of thepresent invention may be realized and attained by means ofinstrumentalities and combinations particularly pointed out in theappended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

Reference is made to the attached drawings, wherein elements having thesame reference numeral designations represent like elements throughoutand wherein:

FIGS. 1A, 1B and 1C are diagrams illustrating a mobile ad hoc networkhaving multiple mobile routers connected to a clusterhead according to atree-based topology, a directed acyclic graph topology according to anembodiment of the present invention, and a reverse graph enablingattachment routers to reach attached routers according to an embodimentof the present invention, respectively.

FIG. 2 is a diagram illustrating one of the mobile routers of FIGS. 1Band 1C, respectively.

FIG. 3 is a diagram illustrating the method of performing directedacyclic graph discovery by each of the mobile routers of FIG. 1B,according to an embodiment of the present invention.

FIG. 4 is a diagram illustrating the routing table entries of the mobilerouters of FIG. 1B that establish the directed acyclic graph of FIG. 1B.

FIG. 5 is a diagram illustrating distribution of routing informationtoward the clusterhead using neighber advertisement messages transmittedvia multiple paths in the ad hoc network, according to an embodiment ofthe present invention.

FIG. 6 is a diagram illustrating the method in each mobile router ofsending a neighbor advertisement message to each attachment router,according to an embodiment of the present invention.

FIG. 7 is a diagram illustrating the routing table entries of the mobilerouters of FIG. 1B that enable the attachment routers to reach theattached mobile routers, according to an embodiment of the presentinvention.

BEST MODE FOR CARRYING OUT THE INVENTION

FIG. 1A is a diagram illustrating an ad hoc network having mobilerouters 12 arranged according to a tree topology 10, as described in theU.S. Patent Publication No. US 2004/0032852 and the above-incorporatedapplication Ser. No. 10/856,809. In particular, the tree topology 10requires that each mobile router 12 can connect to only one attachmentrouter (e.g., the clusterhead “A”) at any time. The ad hoc network ofFIG. 1A has the advantage of rapid convergence based on minimaloverhead, however a loss of connectivity between any two mobile routers12, for example between routers “A” and “D” due to disruption in a link14, requires a reconfiguration of the tree-based ad hoc mobile network10 in order to enable the mobile routers “D”, “E”, and “F” to restoreconnectivity with the clusterhead “A”.

As illustrated in FIG. 1B, the disclosed embodiment is considered animprovement over the tree-based ad hoc network 10, in that mobilerouters 16 (e.g., 16 a, 16 b, 16 c, 16 d, 16 e, and 16 f) can establishconcurrent attachments with multiple attachment routers using availablelinks 18, enabling the mobile routers 16 b, 16 c, 16 d, 16 e, and 16 fto establish a directed acyclic graph 20, relative to the clusterhead 16a, that provides stable connectivity based on utilizing multiple links18 in the ad hoc network. For example, the mobile router “B”16 b canreach the clusterhead “A” 16 a by attaching directly to the clusterhead16 a via link 18 a, or by attaching to the mobile router “C” 16 c vialink 18 b, where the mobile router “C” 16 c has attached to theclusterhead 16 a via link 18 d. As illustrated in FIG. 1B, the mobilerouter “D” 16 d has multiple concurrent attachments toward theclusterhead 16 a via links 18 c and 18 e, and mobile router “F” 16 falso has multiple concurrent attachments toward the clusterhead vialinks 18 g, 18 h, and 18 i.

Hence, a loss of a single link (e.g., 18 c) by a mobile router (e.g., 16d) is inconsequential if the mobile router has at least a second link(e.g., 18 e) with another attachment router that can be used forcommunications toward the clusterhead. Further, use of multiple links bya mobile router 16 enables load sharing of network traffic toward theclusterhead between a mobile router and multiple attachment routers.Hence, the use of multiple unequal-cost paths enables a more stablenetwork topology within the ad hoc network, even if individual links maybe lost in the layer 2 mesh network. A description of the establishmentof the directed acyclic graph (DAG) 20 by the mobile routers 16 isdescribed below with respect to FIGS. 2-4.

In addition, the disclosed embodiment provides an improvement over theneighbor discovery messages described in the above-incorporatedapplication Ser. No. 10/856,809 by enabling the neighbor discoverymessages to be sent from mobile routers 16 b, 16 c, 16 d, 16 e, and 16 fvia the multiple attachment routers toward the clusterhead 16 a. Eachmobile router 16 identifies an adjacently-reachable mobile router as anattached mobile router (i.e., a child router), or an attachment mobilerouter (i.e., a parent router); consequently, each mobile router 16 isable to determine whether an advertised network prefix is reachable viaa parent router or a child router, enabling each router in the path toroute a packet accordingly. Hence, the attachment routers are able toobtain the neighbor discovery messages via all available paths 18,enabling the construction of a reverse graph 22, illustrated in FIG. 1C,that enables the clusterhead 16 a to reach mobile routers (e.g., 16 f)that are furthest from the clusterhead. A description of the forwardingof routing information via neighbor discovery messages is describedbelow with respect to FIGS. 2 and 5-7.

FIG. 2 is a diagram illustrating one of the mobile routers 16 (e.g., 16d), according to an embodiment of the present invention. The mobilerouter 16 includes an attachment resource 24, a neighbor advertisementresource 26, a neighbor discovery resource 28, a router advertisementresource 30, a routing table 32, and a routing resource 34. FIG. 2 alsoprovides a logical illustration of egress ports 36 used by the mobilerouter for attaching to attachment routers based on received routeradvertisement messages 68 (e.g., 68 a, 68 b), and transmitting neighbordiscovery messages 70 (e.g., 70 e and 70 f); the mobile router 16 alsologically includes ingress ports 38 used by the mobile router 16 forcommunicating with attached routers by sending router advertisementmessages 68 c and receiving neighbor discovery messages 70 (e.g., 70 band 70 d). The term “logical” refers to a mapping by the mobile router16 between a network address (e.g., “D::10”) and a physical layerconnection between a source node and destination node (e.g., physicaloutput port, wireless link identifier, etc.) illustrated in the Figuresby the double letter designation for source node to destination node(e.g., “D-E” for a link 18 f connecting mobile routers 16 d and 16 e).

The attachment resource 24 is configured for receiving routeradvertisement messages (e.g., 68 a, 68 b) and selectively attaching withat least one attachment router. As described in the above-incorporatedapplications (U.S. Patent Publication No. US 2004/0032852 and theabove-incorporated application Ser. No. 10/856,809), the routeradvertisement resource 30 in each mobile router is configured foroutputting an unsolicited router advertisement message 68 that specifiesa prescribed address prefix used by the router outputting the routeradvertisement message; for example, the mobile routers 16 a, 16 b, 16 c,16 d, 16 e, and 16 f will send out router advertisement messages 68specifying their respective hexadecimal address prefixes “A::/64”,“B::/64”, “C::/64”, “D::/64”, “E::/64”, and “F::/64”. Hence, theattachment resource 24 of any mobile router that wishes to attach to anyone of the mobile routers 16 a, 16 b, 16 c, 16 d, 16 e, and 16 f willselect a corresponding attachment address within the address prefixadvertised by the attachment router. For example, the attachmentresource 24 of FIG. 2 may select the attachment address “A::14” inresponse to the router advertisement message 68 a advertising theaddress prefix “A::/64” in order to attach to the mobile router 16 a,and the attachment address “C::11” in order to attach to the mobilerouter 16 c in response to the router advertisement message 68 badvertising the address prefix “C::/64”. The attachment resource 24completes the attachment to the corresponding attachment router byadding egress routing table entries 40 d and 40 e, also referred to asdefault route adjacency entries, to the routing table 32. As describedbelow, each default route adjacency entry 40 d and 40 e in the routingtable 32 specifies a default route toward the clusterhead 16 a based ona corresponding adjacency established with a next-hop router (16 a forentry 40 d, and 16 c for entry 40 e). Also as described below, eachdefault route adjacency entry 40 d and 40 e does not specify the numberof hops to the corresponding parent router because it is a next-hoprouter; rather, the entries 40 d and 40 e specify the number of hops tothe clusterhead.

FIG. 3 is a diagram illustrating the method by the attachment resource24 and the router advertisement resource 30 for attaching to multipleattachment routers based on received router advertisement messages(e.g., 68 a, 68 b), and advertising router advertisement messages (e.g.,68 c), according to an embodiment of the present invention. The stepsdescribed in FIG. 3 (and FIG. 6, described below) can be implemented asexecutable code stored on a computer readable medium (e.g., a hard diskdrive, a floppy drive, a random access memory, a read only memory, anEPROM, a compact disk, etc.).

If in step 42 the attachment resource 24 does not detect any routeradvertisement messages 68 within a prescribed time interval, and if themobile router has an existing attachment router in step 44, theattachment resource 24 checks for any expired default route adjacencyentries 40 in the routing table 32, and deletes any expired entries instep 48 accordingly. If in step 44 the attachment resource 24 determinesthat it is a stand-alone mobile router due to the absence of anyattachment router (e.g., no default route adjacency entry 40 in therouting table 32), the attachment resource 24 notifies in step 46 therouter advertisement resource 30 to set itself as a destination for itsown directed acyclic graph, and to advertise its own selected depth.Hence, the router advertisement resource 30 will advertise the prefixutilized by the mobile router (e.g., “D::/64” for mobile router 16 d),plus the selected depth. Additional details relating to routeradvertisement messages can be obtained from the above-incorporatedapplications (U.S. Patent Publication No. US 2004/0032852 and theabove-incorporated application Ser. No. 10/856,809).

Assuming in step 42 that the attachment resource 24 detects a receivedrouter advertisement message (e.g., 68 a or 68 b), the attachmentresource 24 determines in step 50 whether the specified depth in therouter advertisement message (e.g., 68 a, 68 b) is determined to bewithin a prescribed acceptable range for the mobile router 16. Inparticular, a given mobile router 16 may be optimized for prescribedoperations; for example, a wireless backbone router may be optimized tooperate as a relay in a mesh network, and hence may be configured for adepth range of 2 to 5 hops, whereas distribution routers may beoptimized for operating at 5 to 9 hops from the clusterhead and closerto the end nodes of the network. If in step 50 the attachment resource24 determines that the advertised depth is outside the acceptable rangeof the mobile router, the attachment resource 24 discards the routeradvertisement message in step 52.

If, however, the attachment resource 24 determines that the advertiseddepth is within the acceptable range of the mobile router, theattachment resource 24 attaches to the parent router (i.e., theattachment router) by storing in step 53 the default route adjacencyentry 40 (e.g., 40 e). As illustrated in further detail in FIG. 4, eachdefault route adjacency entry 40 includes a path identifier 60, namelythe attachment address, for reaching the corresponding attachment router(identified by its address prefix 62), an optional link identifier 64that enables the mobile router to map each attachment address 60 to acorresponding data link 18 for the corresponding attachment router(identified by the corresponding address prefix 62); each default routeadjacency entry 40 also specifies the corresponding cost 66 specifyingthe number of hops required to reach the clusterhead 16 a.

In response to the attachment resource 24 updating the default routeadjacency entry 40 e in step 53, the neighbor advertisement resource 26sends in step 54 an updated neighbor advertisement message 70, describedbelow, to each parent router (i.e., attachment router) specified in thedefault route adjacency entries 40 of the routing table 32. The routeradvertisement resource 30 also selects in step 56 an advertisement depth(i.e., a depth to be advertised by the mobile router 16) based on addinga selected nonzero increment value to the maximum depth value specifiedamong the default route adjacency entries 40 d and 40 e: as illustratedin FIG. 4, the router advertisement resource 30 for the mobile router 16d selects the maximum depth value of “2 hops” from the default routeadjacency entry 40 e, and adds a nonzero increment (e.g., 1 or more) forthe selected depth in step 56. The advertisement resource 30 thenadvertises to other mobile routers 16 by outputting in step 58 a routeradvertisement message 68 c specifying that the clusterhead is reachablevia the router prefix “D::/64” 62 at an advertised cost 66 of 3 hops, asillustrated by entries 40 f and 40 h indicating that the mobile router16 d advertises 3 hops to the clusterhead.

Hence, the attachment resource 24 mobile router will establishconcurrent attachments to respective attachment routers based on therespective advertisement messages (e.g., 68 a, 68 b) specifying therespective parent depths relative to the clusterhead. In addition, therouter advertisement resource 30 of each mobile router 16 is configuredfor advertising reachability to the clusterhead 16 a based on specifyingwithin the router advertisement message 68 c an advertised depthrelative to the clusterhead. The “advertised depth” does not necessarilyneed to be the actual depth of the mobile router relative to theclusterhead, but rather can be greater than the actual depth of themobile router in order to enable the mobile router to advertise apreferred position within the network topology.

Hence, as illustrated in FIG. 4, each of the mobile routers 16, uponhaving created at least one default route adjacency entry (40 a and 40 bin mobile router 16 b, 40 c in mobile router 16 c, 40 d and 40 e inmobile router 16 d, 40 f in mobile router 16 e, and 40 g, 40 h, and 40 iin mobile router 16 f), provides a path toward the clusterhead, suchthat each mobile router 16 provides a distributed entry 40 that enablesformation of the directed acyclic graph 20 of FIG. 1B without anycentral management entity. In other words, the directed acyclic graph isformed based on the distributed and independent implementation of theabove routing protocols by each of the mobile routers 16, where eachmobile router 16 needs to store only the corresponding components 40 information of the DAG 20.

FIG. 5 is a diagram illustrating distribution of neighbor advertisementmessages 70 by the mobile routers 16 toward the clusterhead 16 a,according to an embodiment of the present invention.

In particular, each of the attached mobile routers 16 b, 16 c, 16 d, 16e, and 16 f identify themselves to their attachment routers by sendingneighbor advertisement messages 70 via their egress interfaces 36 andthat specify a network-in-node option that a given network prefix 72(i.e., a “reachable prefix”) is reachable via a specified attachmentaddress 74 at an advertised cost 76 (e.g., number of hops). Eachneighbor advertisement message 70 also includes, for each specifiedprefix 72, a corresponding sequence identifier 78 that enables theparent router to validate whether the corresponding attachment address74 and advertised cost 76 are valid entries relative to prior storedentries in the attachment router. In particular, since the disclosedembodiment is not limited to a tree topology as illustrated in FIG. 1A,a neighbor advertisement message can be received from different sources,creating the possibility that aged information can be propagated towardthe clusterhead 16 a.

Use of the sequence identifier 78 ensures that the parent routers candistinguish between new information and aged information in the neighboradvertisement messages 70. As described below, each parent routerdetermines whether a received neighbor advertisement message 70specifies a new entry or an aged entry based on the sequence identifier78. Hence, received neighbor advertisement messages 70 specifying agedsequence identifiers 78 can be discarded as aged information beingpropagated by a subtree; however, new sequence identifiers 78 enable theparent router to create a new ingress table entry 80, illustrated inFIGS. 2 and 7, that specifies the new routing information, and propagatethe new routing information toward the clusterhead in a new neighboradvertisement message 70. As described in detail below, the routingresource 34 in each of the mobile routers 16 is configured for routingany packet specifying an unknown destination to its attachment routers;hence, the packet is routed toward the clusterhead 16 a until a mobilerouter can identify the destination address relative to an identifiednetwork prefix 72.

Hence, the disclosed embodiment provides an efficient proactive routingprotocol for ad hoc networks that minimizes the necessity of bandwidthand processing requirements to accommodate rapid topology changes byproviding rapid convergence. Hence, the disclosed embodiment provides aLORA type routing protocol even more efficient than the above-describedSTAR protocol, while accommodating multiple concurrent attachments bymobile routers to multiple parents, as illustrated by the DAG 20.

FIG. 6 is a diagram illustrating the method by the neighbor discoveryresource 28 in each of the mobile routers 16 of selectively addingingress table entries 80 to the routing table 32, and the neighboradvertisement resource 26 in each of the mobile routers 16 of outputtingthe neighbor advertisement message 70 to each of its parent routersbased on the contents of the ingress table entries 80, according to anembodiment of the present invention.

The method begins in step 82, where the neighbor discovery resource 28parses a received neighbor advertisement message 70 having been receivedfrom a child router (i.e., an attached mobile router) to determinewhether the message 70 specifies a new neighbor prefix. For example,assume the neighbor discovery resource 28 of the mobile router 16 dreceives and parses the neighbor advertisement message 70 b of FIG. 5from the attached mobile router 16 f. Assuming there are no prioringress table entries 80 in the mobile router 16 d specifying thenetwork prefix “F::/64” 72 used by the mobile router 16 f, the neighbordiscovery resource 28 adds in step 84 a new ingress table entry 80 b,illustrated in FIGS. 2 and 7, specifying that the reachable prefix“F::/64” 72 specified in the neighbor advertisement message 70 b isreachable via the attachment address “D::11” 74 at an advertised cost 76of 1 hop, and corresponding to the sequence identifier 78 having a valueof “10” for the prefix “F::/64”. The entry 80 b also specifies that theattachment address “D::11” 74 is accessed via link identifier “D-F” 86.

As described above with respect to step 54 of FIG. 3, each update of therouting table 32, by either an egress entry 40 or an ingress entry 80,causes the neighbor advertisement resource 26 to send a new neighboradvertisement message 70; hence, the neighbor advertisement resource 26sends in step 86 an updated neighbor advertisement message 70 to eachparent router, specifying each of the reachable prefixes 72 in theingress table entries 80 and the default prefix (e.g., “D::/64”), theirincremented costs 76, and their respective prefixes 78.

Assume now in step 82 that the mobile router 16 d receives the neighbordiscovery message 70 d, which specifies the prefix “E::/64” used by themobile router 16 e, but also the prefix “F::/64” based on the mobilerouter 16 e having received the neighbor advertisement message 70 c. Inthis case, all the neighbor advertisement messages 70 a, 70 b, and 70 cfrom the neighbor advertisement resource 26 of the mobile router 16 feach specify the same sequence number “10”, indicating that each of theneighbor advertisement messages 70 a, 70 b, and 70 c were generated atthe same time (i.e., based on the same event).

Hence, the neighbor discovery resource 28 of the mobile router 16 d, inresponse to detecting the neighbor advertisement message 70 d, updatesthe routing table for the prefix “E::/64” as described above withrespect to step 84 by adding an ingress table entry 80 a.

Regarding the prefix “F::/64” in the neighbor advertisement message 70d, the neighbor discovery resource 28 in the mobile router 16 ddetermines in step 90 whether a newer sequence number is specified (notethat any advertisements specifying older sequence numbers are obsoleteand therefore discarded). Assuming a new sequence number 78 wasspecified for an existing prefix 72, if the neighbor discovery resource28 determines in step 94 that the message 70 specifying the new sequencenumber 78 also has the best cost relative to any stored entries 80, theneighbor discovery resource 28 deletes the aged entries 80 for reachingthe specified prefix via the corresponding child identifier 74 in step96, and updates the appropriate ingress routing table 80 in step 84 toinclude the new reachability information.

However if in step 94 the neighbor advertisement message 70 specifies apreviously-stored prefix 72 with a new sequence number 78, but at aworse cost 78 then an existing stored entry for reaching the prefix 72via the corresponding child 74, the neighbor discovery resource 28 waitsin step 98 a short interval (e.g., 50 milliseconds) in an attempt tocollect additional neighbor advertisement messages 70 from the childrouters. This wait interval in step 98 ensures that any new neighboradvertisement messages 70 that need to be generated in response to atopology change among the child routers in the subtree have sufficienttime to be received by the neighbor discovery resource 28 in the parentrouter. After the wait interval in step 98, the neighbor discoveryresource 28 determines in step 100 the best advertised cost for reachinga given prefix 72 via a given child router 74, and adds the bestadvertised cost as a table entry 80. The neighbor discovery resource 28also deletes in step 100 any entry 80 that still specifies an agedsequence number.

Referring again to step 90 of FIG. 6, in the example illustrated in FIG.5, both the neighbor advertisement message 70 d and the stored ingresstable entry 80 b specify the same sequence identifier 78 (Seq=10),indicating that the routing information related to the prefix “F::/64”in the neighbor advertisement messages 70 b and 70 d are based on thesame event; hence, the neighbor discovery resource 28 of the mobilerouter 16 d is able to validate the routing information for the prefix“F::/64” in the neighbor advertisement message 70 d as a validalternative path for reaching the advertised prefix “F::/64”.

Upon validating the routing information for the prefix “F::/64” in theneighbor advertisement message 70 d, and assuming that a new sequencenumber 78 is not specified, the neighbor discovery resource 28determines in step 92 whether the neighbor advertisement message 70 dspecifies a better cost 76 than a prior stored cost in an ingress tableentry 80 for reaching the specified prefix via the correspondingattached router (i.e., child router); in other words, a parent routermay receive more than one neighbor advertisement message 70 from a givenchild router for the same prefix: normally the newest neighboradvertisement message 70 (as identified by the sequence number 78) hasthe best metric, which is stored as an ingress table entry 80 as thecost 76 of reaching the specified prefix 72 via the corresponding childrouter 74. However, in some instances the child router for the specifiedprefix may specify an improved cost using the same sequence number 78,for example in the case of an intervening router, between the childrouter and the originating router that utilizes the specified prefix,moving within the directed acyclic graph 20 to a position which iscloser to the parent router. In this case, since the neighbor discoveryresource 28 would determine that the neighbor advertisement message instep 92 would specify a better cost than the stored cost for theidentified prefix via the child router, the neighbor discovery resource28 would overwrite the corresponding child router entry 80 to specifythat the specified prefix is reachable via the specified child router atthe improved cost.

Hence, the neighbor discovery resource 28 is able to accommodate changesin its subnetwork topology that are not detected by the mobile routerhaving originated the first neighbor advertisement message 70.

If in step 92 the neighbor discovery resource 28 determines that theneighbor advertisement message 70 specifies the same sequence number(e.g., “10”) 78 for a given prefix (e.g., “F::/64”) 72, but specifies adifferent child router (e.g., “D::10”) 74, as illustrated by the mobilerouter 16 d of FIG. 5 receiving the neighbor advertisement message 70 d,the neighbor discovery resource 28 updates in step 102 the routing table32 by adding an ingress table entry 80 c, illustrated in FIG. 7. Anupdated neighbor advertisement message 70 e is thus output by theneighbor advertisement resource 26 in step 88: the neighboradvertisement message 70 e specifies the reachable prefixes 72, namelythe native prefix “D::/64”, and the reachable prefixes stored in theingress table entries 80 (e.g., “E::/64” and “F::/64”); the neighboradvertisement resource 26 in step 88 also determines the best costs(i.e., minimum costs) from the ingress table entries 80 (e.g., 1 hop for“E::/64” and 1 hop for “F::/64”), and increments the minimum costs byone to obtain a new advertised cost for the neighbor advertisementmessage 70 e. Also note that the neighbor advertisement resource 26preserves the sequence number 78 for each corresponding prefix 72,enabling parent routers (e.g., 16 c) to validate the routing informationthat may be received via alternative paths (e.g., neighbor advertisementmessage 70 a).

Hence, each of the mobile routers 16 selectively adds or updates aningress routing table entry 80 in response to received neighboradvertisement messages 70 based on the sequence number 78 and theassociated costs 76, and also in response generates a new neighboradvertisement message 70 that includes the best costs for the reachableprefixes specified in the ingress router table entries 80, incrementedby one to accommodate for the next hop. As illustrated in FIGS. 5 and 7,each of the parent routers toward the clusterhead are able to obtainrouting information for all of the prefixes that are reachable via theattached routers: the mobile router 16 d is able to create ingress tableentries 80 a and 80 c for the respective prefixes “E::/64” and “F::/64”72 in response to the message 70 d, plus a second entry 80 b for theprefix “F::/64” 72 in response to the message 70 b; and the mobilerouter 16 c is able to create ingress table entries 80 for the prefix“B::/64” 72 from message 70 h and prefixes “D::/64”, “E::/64”, and“F::/64” from message 70 e, plus a second entry 80 for the prefix“F::/64” based on the message 70 a.

Finally, the clusterhead 16 a is able to create ingress table entries 80for the prefixes “B::/64”, “C::/64”, “D::/64”, “E::/64”, and “F::/64” 72from message 70 i, plus a second entry 80 for the prefix “B::/64” basedon the message 70 g, plus additional second entries 80 for prefixes“D::/64”, “E::/64”, and “F::/64” 72 from message 70 f. Hence, each ofthe attachment routers 16 a, 16 b, 16 c, 16 d, and 16 e are able toobtain routing information for the reachable prefix “F::/64” of thefurthest child router 16 f, plus any intervening prefixes “B::/64”,“C::/64”, “D::/64”, “E::/64”, and “F::/64”. Moreover, each of theattachment routers can utilize available multiple paths, consistent withthe DAG 20 of FIG. 1B, enabling data from the clusterhead 16 a to theend child routers 16 b or 16 f to be transferred via the ad hoc networkaccording to the reverse graph 22 of FIG. 1C.

According to the disclosed embodiment, mobile routers can operateindependently to form a directed acyclic graph toward a clusterheadwithin a mobile ad hoc network, without the necessity of centralizedtopology management or additional network-management messages other thanunsolicited router advertisement messages by attachment routers (i.e.,parent routers) and neighbor advertisement messages by attached routers(i.e., child routers). Hence, multiple concurrent paths can beestablished between a child router and the clusterhead, resulting in amore stable communications between endpoints despite link fluctuationswithin the layer to mesh network. Further, the distribution of routinginformation throughout the directed acyclic graph enables a mobilerouter to determine whether a given packet should be routed on anidentified ingress port or an identified egress port, eliminating thenecessity of broadcasting packets to neighboring nodes that will onlydrop the packet; hence, unnecessary packet traffic in the ad hoc networkis further minimized. Rather, load balancing can be applied todistribute data traffic across multiple links.

While the disclosed embodiment has been described in connection withwhat is presently considered to be the most practical and preferredembodiment, it is to be understood that the invention is not limited tothe disclosed embodiments, but, on the contrary, is intended to covervarious modifications and equivalent arrangements included within thespirit and scope of the appended claims.

What is claimed is:
 1. A method in a mobile router configured forestablishing communications within an ad hoc network, the methodincluding: establishing concurrent attachments by the mobile router torespective attachment routers based on having received respectiveadvertisement messages specifying respective parent metrics relative toa single clusterhead of the ad hoc network; selecting by the mobilerouter an advertised metric relative to the single clusterhead based onadding a prescribed increment to a maximum one of the parent metrics,the advertised metric having a maximum cost relative to the parentmetrics; and advertising reachability by the mobile router to reach thesingle clusterhead based on the mobile router outputting a routeradvertisement message specifying the advertised metric relative to thesingle clusterhead, the router advertisement message enabling the mobilerouter to position itself within a directed acyclic graph directedtoward the single clusterhead based on the mobile router providing thedirected acyclic graph with concurrent paths toward the singleclusterhead using the respective concurrent attachments.
 2. The methodof claim 1, wherein the establishing includes adding, to a routingtable, a first routing table entry for each attachment router and thatspecifies a corresponding identifier for reaching the correspondingattachment router, and that specifies the corresponding parent metric.3. The method of claim 2, wherein each identifier is a correspondingselected attachment address used by the mobile router for attachment tothe corresponding attachment router, the attachment address within arange of a corresponding address prefix having been advertised withinthe corresponding advertisement message.
 4. The method of claim 3,wherein each identifier is mapped by the mobile router to acorresponding data link to the corresponding attachment router.
 5. Themethod of claim 2, further comprising: sending, to each of theattachment routers and in response to having established eachcorresponding attachment, a first neighbor advertisement messagespecifying a first reachable prefix advertised by the mobile router inthe router advertisement message, a corresponding metric for reachingthe first reachable prefix, and a corresponding sequence identifier thatenables validation of the corresponding first reachable prefix relativeto any stored router entries in the attachment routers.
 6. The method ofclaim 5, further comprising: receiving a second neighbor advertisementmessage from an attached mobile router having attached to the mobilerouter, the second neighbor advertisement message specifying at leastone second reachable prefix that is reachable via the attached mobilerouter, a corresponding advertised metric for reaching the at least onesecond reachable prefix via the attached mobile router, and acorresponding advertised sequence identifier; and selectively adding theat least one second reachable prefix, the corresponding advertisedmetric, and the corresponding advertised sequence identifier to therouting table based on at least one of: (1) determining the advertisedsequence identifier identifying the second neighbor advertisementmessage does not specify an older advertisement of the at least onesecond reachable prefix relative to any corresponding stored sequenceidentifiers stored in the routing table for the at least one secondreachable prefix, and (2) determining the advertised metric is less thanany corresponding stored metric stored in the routing table for the atleast one second reachable prefix; the sending including: (1)incrementing a minimum of said stored metrics corresponding to thesequence identifier identifying a most recent advertisement of the atleast one second reachable prefix, and (2) adding the at least onesecond reachable prefix, the increment of the minimum of thecorresponding stored metrics, and the corresponding sequence identifierto the first neighbor advertisement message.
 7. The method of claim 1,wherein the establishing includes selecting each one of the attachmentrouters based on the corresponding advertised metric determined to bewithin a prescribed acceptable range.
 8. The method of claim 1, furthercomprising sending, to each of the attachment routers, a neighboradvertisement message specifying at least one reachable prefix that isreachable by the mobile router, a corresponding metric for reaching atleast one reachable prefix by the mobile router, and a correspondingsequence identifier that enables validation of the corresponding atleast one reachable prefix relative to any stored router entries in theattachment routers.
 9. The method of claim 1, wherein the concurrentpaths are unequal cost paths.
 10. An apparatus configured forestablishing communications within an ad hoc network, the apparatuscomprising: an attachment resource configured for establishingconcurrent attachments to respective attachment routers based on theapparatus having received respective advertisement messages specifyingrespective parent metrics relative to a single clusterhead of the ad hocnetwork; and a router advertisement resource configured for advertisingthe apparatus as a mobile router providing reachability to reach thesingle clusterhead based on outputting a router advertisement messagespecifying an advertised metric relative to the single clusterhead, therouter advertisement resource configured for selecting the advertisedmetric relative to the single clusterhead based on adding a prescribedincrement to a maximum one of the parent metrics, the advertised metrichaving a maximum cost relative to the parent metrics, the routeradvertisement message enabling the apparatus to position itself within adirected acyclic graph directed toward the single clusterhead based onthe apparatus providing the directed acyclic graph with concurrent pathstoward the single clusterhead using the respective concurrentattachments.
 11. The apparatus of claim 10, further comprising a routingtable configured for storing routing table entries, the attachmentresource configured for adding, to the routing table, a first routingtable entry for each attachment router and that specifies acorresponding identifier for reaching the corresponding attachmentrouter, and that specifies the corresponding parent metric.
 12. Theapparatus of claim 11, wherein each identifier is a correspondingselected attachment address used by the apparatus for attachment to thecorresponding attachment router, the attachment address within a rangeof a corresponding address prefix having been advertised within thecorresponding advertisement message.
 13. The apparatus of claim 12,wherein the apparatus is configured for mapping each identifier to acorresponding data link to the corresponding attachment router.
 14. Theapparatus of claim 11, further comprising: a neighbor advertisementresource configured for sending, to each of the attachment routers andin response to the attachment resource having established eachcorresponding attachment, a first neighbor advertisement messagespecifying a first reachable prefix advertised by the apparatus in therouter advertisement message, a corresponding metric for reaching thefirst reachable prefix, and a corresponding sequence identifier thatenables validation of the corresponding first reachable prefix relativeto any stored router entries in the attachment routers.
 15. Theapparatus of claim 14, further comprising: a neighbor discovery resourceconfigured for parsing a second neighbor advertisement message havingbeen received from an attached mobile router having attached to theapparatus, the second neighbor advertisement message specifying at leastone second reachable prefix that is reachable via the attached mobilerouter, a corresponding advertised metric for reaching the at least onesecond reachable prefix via the attached mobile router, and acorresponding advertised sequence identifier; the neighbor discoveryresource selectively adding the at least one second reachable prefix,the corresponding advertised metric, and the corresponding advertisedsequence identifier to the routing table based on at least one of: (1)determining the advertised sequence identifier identifying the secondneighbor advertisement message does not specify an older advertisementof the at least one second reachable prefix relative to anycorresponding stored sequence identifiers stored in the routing tablefor the at least one second reachable prefix, and (2) determining theadvertised metric is less than any corresponding stored metric stored inthe routing table for the at least one second reachable prefix; theneighbor advertisement resource configured for sending the firstneighbor advertisement message based on: (1) incrementing a minimum ofsaid stored metrics corresponding to the sequence identifier identifyinga most recent advertisement of the at least one second reachable prefix,and (2) adding the at least one second reachable prefix, the incrementof the minimum of the corresponding stored metrics, and thecorresponding sequence identifier to the first neighbor advertisementmessage.
 16. The apparatus of claim 10, wherein the establishingincludes selecting each one of the attachment routers based on thecorresponding advertised metric determined to be within a prescribedacceptable range.
 17. The apparatus of claim 10, further comprising aneighbor advertisement resource configured for sending, to each of theattachment routers, a neighbor advertisement message specifying at leastone reachable prefix that is reachable by the apparatus, a correspondingmetric for reaching at least one reachable prefix by the apparatus, anda corresponding sequence identifier that enables validation of thecorresponding at least one reachable prefix relative to any storedrouter entries in the attachment routers.
 18. The apparatus of claim 10,wherein the concurrent paths are unequal cost paths.
 19. Anon-transitory computer readable medium having stored thereon sequencesof instructions for a mobile router to establish communications withinan ad hoc network, the sequences of instructions including instructionsfor: establishing concurrent attachments by the mobile router torespective attachment routers based on having received respectiveadvertisement messages specifying respective parent metrics relative toa single clusterhead of the ad hoc network; selecting by the mobilerouter an advertised metric relative to the single clusterhead based onadding a prescribed increment to a maximum one of the parent metrics,the advertised metric having a maximum cost relative to the parentmetrics, and advertising reachability by the mobile router to reach thesingle clusterhead based on the mobile router outputting a routeradvertisement message specifying the advertised metric relative to thesingle clusterhead, enabling the mobile router to position itself withina directed acyclic graph directed toward the single clusterhead based onthe mobile router providing the directed acyclic graph with concurrentpaths toward the single clusterhead using the respective concurrentattachments.
 20. The medium of claim 19, wherein the concurrent pathsare unequal cost paths.